Typical motor control applications use an encoder to obtain more precise location information of a stator and rotor of a motor. In one example, the motor is a BrushLess Direct Current (BLDC) synchronous motor. The encoder outputs a digital code that indicates, with relatively high resolution, where the rotor is spatially with respect to the stator thereby eliminating the need for Hall sensors. However, use of an encoder is expensive and substantially increases the cost of the end application.
To reduce costs, Hall effect sensors are often used in motor control applications. Hall sensors are used to detect the location of the rotor during rotation by detecting a change in the magnetic field caused by rotation of the rotor. In a typical motor control system using Hall sensors to detect rotor position with respect to the stator, Hall sensors are attached along the stator at equally spaced angular locations. For example, three Hall sensors are attached to the stator at thirty degree intervals or sixty degree intervals. With knowledge of the location of the Hall sensors, an engineer can program a motor controller in accordance with a desired control topology, such as space vector modulation (SVM).
The motor controller is programmed using two assumptions. First, the control implementation assumes that the angular locations of the Hall sensors are precise. If, for example, the engineer designs the program for the controller assuming that the Hall sensors are spaced thirty degrees apart, but in reality the Hall sensors angular locations are slightly displaced, for example, twenty-nine degrees apart, then the motor controller will not switch efficiently. Consequently, the imprecisely positioned Hall sensors will detect the rotor too early or too late during motor operation. Such variations in angular position of the Hall sensor often occur during manufacture or assembly. Assuring precise placement of Hall sensors can significantly increase manufacturing costs.
Second, the control implementation assumes that the Hall sensor windings are symmetrical. A Hall sensor is an electromagnetic device and uses metal windings to detect changes in magnetic field. Thus, if the Hall sensor windings are not even, then they may not detect the rotor position consistently when the motor is operating in counter-clockwise and clockwise directions. Efficiency of the implementation depends on the veracity of the two assumptions.
If, however, the two assumptions are not actually true, then certain inefficiencies will be manifest. Such inefficiencies result in varying current draw depending on whether the motor is driven in clockwise or counter-clockwise directions. For example, the motor could draw more current when driven in the clockwise direction than when driven in the counter-clockwise direction. Such variances in current draw often go unnoticed or are not identified as a problem. A solution that minimizes the effects of such inefficiencies is desired.